'''
画出如下图形，然后再逐渐消掉。(文件名：py0231.py)

这图形就不是能连笔连出来的，肯定会有重复绘制的问题
'''
import turtle

turtle.setup(1024, 400, 100, 100)  # 绘画窗口的宽度、高度，左上角的X坐标、Y坐标。
turtle.speed(2)  # 速度
turtle.pencolor("white")  # 颜色。本例中，如果不要
turtle.goto(-200, 100)  # 从点【-200,100】开始。默认从【0,0】开始，就中心点。

n = 200
m = 100


def drawRect(color1):
    turtle.pencolor(color1)
    turtle.seth(0)
    #  前面
    for i in range(4):
        turtle.pendown()
        if i % 2 == 0:
            turtle.forward(n)
        else:
            turtle.forward(m)
        turtle.right(90)    # 4
# 上面  有一条线已经有了，就不绘制了
    turtle.seth(45)
    turtle.forward(m)
    turtle.seth(0)
    turtle.forward(n)
    turtle.seth(-135)
    turtle.forward(m)   # 7

# 右侧面
    turtle.seth(-90)        # 8
    turtle.forward(m)
    turtle.seth(45)
    turtle.forward(m)
    turtle.seth(90)
    turtle.forward(m)  # 10 

# 后面
    turtle.seth(180)
    turtle.forward(n)
    turtle.seth(-90)
# 绘制虚线边
    for i in range(0, 5):   
        turtle.pendown()  # 画笔抬起
        turtle.forward(10)  # 画线10点
        turtle.penup()  # 画笔抬起
        turtle.forward(10)  # 画线10点
    turtle.seth(0)
    for i in range(0, 10):   
        turtle.pendown()  # 画笔抬起
        turtle.forward(10)  # 画线10点
        turtle.penup()  # 画笔抬起
        turtle.forward(10)  # 画线10点
    turtle.seth(180)
    turtle.penup()
    turtle.forward(n)

    turtle.seth(-135)
    for i in range(0, 5):   
        turtle.pendown()  # 画笔抬起
        turtle.forward(10)  # 画线10点
        turtle.penup()  # 画笔抬起
        turtle.forward(10)  # 画线10点
    turtle.seth(90)
    turtle.penup()
    turtle.forward(m)


drawRect("black")
drawRect("white")

